# System installation ***Copyright © Quectel Wireless Solutions Co., Ltd. 2026. All rights reserved.*** --- Before flashing the image of **Quectel Pi H1** Smart Single-Board Computer, please ensure that **Qualcomm USB Driver v1.0.10065.1** driver is installed. If it is not installed, you can [click here to download and install](). # QDL flashing image ## Disable ModemManager tool - Prerequisite: If you are using a Linux distribution with **systemd**, and some **Linux** distributions include the **ModemManager** tool that allows for configuring mobile broadband. When a device is connected in **USB** mode, it will be recognized as a **Qualcomm** modem and ModemManager will attempt to configure the device. This will interfere with the **QDL** flashing process. Therefore, **ModemManager** must be disabled before connecting the device. Please use the following command to stop the **ModemManager** tool: ```bash sudo systemctl stop ModemManager ``` ## Download QDL tool For Linux x64, click the link to [download]() For Windows x64, click the link to [download]() ## Enter EDL mode Press and hold the **EMG_DOWNLOAD** button on the side of **Quectel Pi H1**, and power on the module. The module will enter **EDL** emergency download mode. ## Linux x64 1. Extract the **QDL_Linux-x64** compressed file and open a terminal window in the directory containing the firmware program, **rawprogram#.xml**, **patch#.xml**, and **QDL** binary files. 2. Use the following command to run the **QDL** executable file in the **QDL_Linux-x64** directory for software refresh. ```bash ./qdl --storage ufs prog_firehose_Qcm6490_ddr.elf rawprogram*.xml patch*.xml ``` 3. If you see the message **"partition 1 is now bootable"** in the terminal window, it means the refresh is successful, as shown in the following figure: ```{image} images/image_QMTwbkt37ot6qSxVQIicDMtXnLg.webp :width: 1064px :height: 558px ``` 4. After successful flashing, running the **lsusb** command to see device information in the terminal window, as shown in the following figure: ```{image} images/image_NJh3b23bUoaqWOxoQhxczRdHnnf.webp :width: 808px :height: 151px ``` ## Windows x64 1. Install the **Microsoft WinUSB** driver. - Uninstall other drivers for this device (e.g., Qualcomm USB drivers). Open the Device Manager and confirm that the device does not appear under the "**Port COM**" category. If the device is listed there, ensure you select "Delete the driver software for this device" when uninstalling. - Right-click on the device (**qcm6490-idp**) in the Device Manager and select the following options in sequence: - **Update driver**. - **Browse my computer for drivers**. - **Let me pick from a list of available drivers on my computer**. - Select "**WinUsb Device**" in "**Manufacturer**", and select "**WinUsb Device**" in "**Model**". - Click "**Next**", and when the **Update Driver Warning** prompt box appears, click "**Yes**" to proceed with the installation. ```{image} images/image_GgSIbfIkYocuJ8xF7qBcPg73nEh.webp :width: 854px :height: 751px ``` 2. Extract the **QDL_Win-x64** compressed file, and put the firmware program, **rawprogram#.xml**, **patch#.xml** and other files, as well as the **QDL** executable file into a folder. 3. Open the **CMD** window and use the following command to run the **QDL** executable file in the **QDL_Win-x64** directory. ```plaintext QDL_Win_x64>QDL.exe prog_firehose_Qcm6490_ddr.elf rawprogram0.xml rawprogram1.xml rawprogram2.xml rawprogram3.xml rawprogram4.xml rawprogram5.xml patch0.xml patch1.xml patch2.xml patch3.xml patch4.xml patch5.xml ``` ```{image} images/image_QkeXbhVdMoNUxrxjgG6c2dCLn6e.webp :width: 964px :height: 161px ``` The successful flashing is shown in the following figure: ```{image} images/image_Xb38bpaCeoHFnMxGI21cEJkbnub.webp :width: 964px :height: 360px ``` ## Note If the refresh fails, please follow these steps and retry the refresh process: 1. Turn off the device power. 2. Disconnect from **Quectel Pi H1**. 3. Restart **Quectel Pi H1**. # QFIL flashing image **QFIL** (**Qualcomm Flash Image Loader**) is an official firmware flashing tool developed by **Qualcomm**, mainly used for embedded devices such as smartphones and tablets equipped with **Qualcomm** chips. Its core function is to flash or write firmware files (such as **Bootloader**, **Recovery**, kernel, etc.) into the device through the **USB** connection. - Please note that the "**Erase All Before Download**" option in the configuration cannot be ticked. ```{image} images/image_HJb0bNrqyoXN4PxhLsMcW5gkn8m.webp :width: 800px :height: 599px ``` 1. Click on the "**Configuration**" button, click on the "**FireHose Configuration**" button that pops up, select the "**Reset After Download**" option box, and click the "**OK**" button. ```{image} images/image_SUlNbPADyoQs2Sxeaa9cS9Lnnxv.webp :width: 800px :height: 599px ``` ```{image} images/image_SgWVb22p8os0y9x8UlAcnTm2nqa.webp :width: 748px :height: 361px ``` 2. Choose "**Flat Build**" as the build type and "**ufs**" as the storage type in the bottom right corner. ```{image} images/image_Ft5NbDCQcoGN0zxijo3cCUD3nBb.webp :width: 800px :height: 599px ``` 3. Press and hold the "**EMG_DOWNLOAD**" button on **Quectel Pi H1**, power on the device, click the "**SelectPort**" button, select port **Qualcomm HS-USB QDLoader 9008**, and click the "**OK**" button. ```{image} images/image_VY2xbQgikohkK2xll6xcu8eynJe.webp :width: 800px :height: 599px ``` 4. Click the "**Browse**" button and select the **prog_firehose_Qcm6490_ddr.elf** file. ```{image} images/image_JXnFbwTRvorfPdxoWcYcFr0LnVd.webp :width: 800px :height: 599px ``` 5. Click the "**LoadXML**" button and select all **rawprogram#.xml** files and **patch#.xml** files. ```{image} images/image_G4ejbmPLIoJHY5xTVlXcxTu0nms.webp :width: 800px :height: 599px ``` 6. Click the "**Download**" button. When the words **Download Succeed** appear in the **Status** information box, it means that the flashing is successful and the system will automatically restart. ```{image} images/image_WnuObZmUzopPuTxT6uqcthkvnSe.webp :width: 800px :height: 599px ```